package com.ruoyi.system.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 备品对象 lab_product
 * 
 * @author winner pan
 * @date 2022-05-13
 */
public class Product extends BaseEntity {
	private static final long serialVersionUID = 1L;

	/** $column.columnComment */
	private Long id;

	/** 料单ID */
	@Excel(name = "料单ID")
	private Long instanceId;

	/** 备品编号 */
	@Excel(name = "备品编号")
	private String productNo;

	/** 学院 */
	@Excel(name = "学院")
	private Long collegeOrgId;

	/** 实验室 */
	@Excel(name = "实验室")
	private Long labId;

	/** 备品规格 */
	@Excel(name = "备品规格")
	private String specs;

	/** 备品名称 */
	@Excel(name = "备品名称")
	private String assetName;

	/** 购买日期 */
	@JsonFormat(pattern = "yyyy-MM-dd")
	@Excel(name = "购买日期", width = 30, dateFormat = "yyyy-MM-dd")
	private Date purchaseDate;

	/** 单价 */
	@Excel(name = "单价")
	private BigDecimal unitPrice;

	/** 数量 */
	@Excel(name = "数量")
	private Long quantity;

	/** 使用方向 */
	@Excel(name = "使用方向")
	private String expectUseOpt;

	/** 经费项目 */
	@Excel(name = "经费项目")
	private String fundsItem;

	/** 可用数量 */
	@Excel(name = "可用数量")
	private Long availableNum;
	
	private String collegeOrgName;
	

	public String getCollegeOrgName() {
		return collegeOrgName;
	}

	public void setCollegeOrgName(String collegeOrgName) {
		this.collegeOrgName = collegeOrgName;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public Long getId() {
		return id;
	}

	public void setInstanceId(Long instanceId) {
		this.instanceId = instanceId;
	}

	public Long getInstanceId() {
		return instanceId;
	}

	public void setProductNo(String productNo) {
		this.productNo = productNo;
	}

	public String getProductNo() {
		return productNo;
	}

	public void setCollegeOrgId(Long collegeOrgId) {
		this.collegeOrgId = collegeOrgId;
	}

	public Long getCollegeOrgId() {
		return collegeOrgId;
	}

	public void setLabId(Long labId) {
		this.labId = labId;
	}

	public Long getLabId() {
		return labId;
	}

	public void setSpecs(String specs) {
		this.specs = specs;
	}

	public String getSpecs() {
		return specs;
	}

	public void setAssetName(String assetName) {
		this.assetName = assetName;
	}

	public String getAssetName() {
		return assetName;
	}

	public void setPurchaseDate(Date purchaseDate) {
		this.purchaseDate = purchaseDate;
	}

	public Date getPurchaseDate() {
		return purchaseDate;
	}

	public void setUnitPrice(BigDecimal unitPrice) {
		this.unitPrice = unitPrice;
	}

	public BigDecimal getUnitPrice() {
		return unitPrice;
	}

	public void setQuantity(Long quantity) {
		this.quantity = quantity;
	}

	public Long getQuantity() {
		return quantity;
	}

	public void setExpectUseOpt(String expectUseOpt) {
		this.expectUseOpt = expectUseOpt;
	}

	public String getExpectUseOpt() {
		return expectUseOpt;
	}

	public void setFundsItem(String fundsItem) {
		this.fundsItem = fundsItem;
	}

	public String getFundsItem() {
		return fundsItem;
	}

	public void setAvailableNum(Long availableNum) {
		this.availableNum = availableNum;
	}

	public Long getAvailableNum() {
		return availableNum;
	}
	private Integer scanoutNum;
	private Integer scaninNum;
	

	public Integer getScaninNum() {
		return scaninNum;
	}

	public void setScaninNum(Integer scaninNum) {
		this.scaninNum = scaninNum;
	}

	public Integer getScanoutNum() {
		return scanoutNum;
	}

	public void setScanoutNum(Integer scanoutNum) {
		this.scanoutNum = scanoutNum;
	}

	@Override
	public String toString() {
		return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE).append("id", getId())
				.append("instanceId", getInstanceId()).append("productNo", getProductNo())
				.append("collegeOrgId", getCollegeOrgId()).append("labId", getLabId()).append("specs", getSpecs())
				.append("assetName", getAssetName()).append("purchaseDate", getPurchaseDate())
				.append("unitPrice", getUnitPrice()).append("quantity", getQuantity())
				.append("expectUseOpt", getExpectUseOpt()).append("fundsItem", getFundsItem())
				.append("availableNum", getAvailableNum()).toString();
	}
}